package xjtu.sad.zbsj.task.annotater.labelTask;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.util.Date;

public class DrawInfo {
    private Integer drawId;// 领取id
    private Integer userId;// 领取的用户id
    private Integer taskId;// 任务id

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GTM+8")
    private Date startTime;// 领取的时间

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GTM+8")
    private Date endTime;// 本次领取的实际结束时间

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GTM+8")
    private Date expectedEndTime;// 本次领取的预期结束时间

    private Double credit;// 当次领取标注获得的积分
    private Date creditDistributeTIme;// 积分发放时间
    private String urgentLevel; // 紧急程度
    private Integer totalNum; // 本次领取任务总数
    private Integer unFinishNum; //未完成数量
    private String drawStatus;// 领取状态

    // TaskInfo
    private TaskInfo taskInfo;// 本次领取的任务信息


    public DrawInfo() {
    }

    public DrawInfo(Integer drawId, Integer userId, Integer taskId, Date startTime, Date endTime, Date expectedEndTime, Double credit, Date creditDistributeTIme, Integer totalNum, Integer unFinishNum, TaskInfo taskInfo) {
        this.drawId = drawId;
        this.userId = userId;
        this.taskId = taskId;
        this.startTime = startTime;
        this.endTime = endTime;
        this.expectedEndTime = expectedEndTime;
        this.credit = credit;
        this.creditDistributeTIme = creditDistributeTIme;
        this.totalNum = totalNum;
        this.unFinishNum = unFinishNum;
        this.taskInfo = taskInfo;
    }

    public String getDrawStatus() {
        return drawStatus;
    }

    public void setDrawStatus(String drawStatus) {
        this.drawStatus = drawStatus;
    }

    public String getUrgentLevel() {
        return urgentLevel;
    }

    public void setUrgentLevel(String urgentLevel) {
        this.urgentLevel = urgentLevel;
    }

    public Integer getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(Integer totalNum) {
        this.totalNum = totalNum;
    }

    public Integer getUnFinishNum() {
        return unFinishNum;
    }

    public void setUnFinishNum(Integer unFinishNum) {
        this.unFinishNum = unFinishNum;
    }

    public Date getExpectedEndTime() {
        return expectedEndTime;
    }

    public void setExpectedEndTime(Date expectedEndTime) {
        this.expectedEndTime = expectedEndTime;
    }

    public TaskInfo getTaskInfo() {
        return taskInfo;
    }

    public void setTaskInfo(TaskInfo taskInfo) {
        this.taskInfo = taskInfo;
    }

    public Integer getDrawId() {
        return drawId;
    }

    public void setDrawId(Integer drawId) {
        this.drawId = drawId;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getTaskId() {
        return taskId;
    }

    public void setTaskId(Integer taskId) {
        this.taskId = taskId;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Double getCredit() {
        return credit;
    }

    public void setCredit(Double credit) {
        this.credit = credit;
    }

    public Date getCreditDistributeTIme() {
        return creditDistributeTIme;
    }

    public void setCreditDistributeTIme(Date creditDistributeTIme) {
        this.creditDistributeTIme = creditDistributeTIme;
    }

    @Override
    public String toString() {
        return "DrawInfo{" +
                "drawId=" + drawId +
                ", userId=" + userId +
                ", taskId=" + taskId +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", expectedEndTime=" + expectedEndTime +
                ", credit=" + credit +
                ", creditDistributeTIme=" + creditDistributeTIme +
                ", urgentLevel='" + urgentLevel + '\'' +
                ", totalNum=" + totalNum +
                ", unFinishNum=" + unFinishNum +
                ", taskInfo=" + taskInfo +
                '}';
    }
}
